home *** CD-ROM | disk | FTP | other *** search
/ Best Tools for JAVA / Best Tools for JAVA.iso / JAVA_ALL / JDBC / JDODB101 / JDBC-ODB.ZIP / jdbc-odbc / JDBC-ODBC-RELEASE-NOTES < prev    next >
Encoding:
Text File  |  1996-09-20  |  9.7 KB  |  288 lines

  1.         JDBC-ODBC Version 1.0105 Release Notes
  2.  
  3.  
  4. Version 1.0105 Notes
  5. --------------------
  6. With this version the package name for the bridge has been changed to
  7. sun.jdbc.odbc (it was previously jdbc.odbc).  This was done in
  8. preparation for its inclusion in the forthcoming JDK 1.1 release.
  9.  
  10. Be sure to remove any previous versions of the bridge that may still be
  11. installed. This package name change also changes the path name for the
  12. JdbcOdbc.dll file: be sure to change your library path to
  13. jdbc-odbc/sun/jdbc/odbc.
  14.  
  15. The Win32 JdbcOdbc.dll is now dynamically linked and requires
  16. msvcrt.dll and msvcrtd.dll for the normal and debug versions
  17. respectively.
  18.  
  19.  
  20. What is the JDBC-ODBC Bridge?
  21. -----------------------------
  22. The JDBC-ODBC Bridge is a JDBC driver which implements JDBC operations
  23. by translating them into ODBC operations. To ODBC it appears as a
  24. normal application program.
  25.  
  26. The Bridge implements JDBC for any database for which an ODBC driver is
  27. available (for the client environments noted below.)
  28.  
  29. The Bridge is implemented as the sun.jdbc.odbc Java package and contains a
  30. native library used to access ODBC.
  31.  
  32. The Bridge is a joint development of Intersolv and JavaSoft.
  33.  
  34.  
  35. Who to contact?
  36. ---------------
  37. You can contact us at jdbc-odbc@wombat.eng.sun.com
  38.  
  39.  
  40. What version of JDBC is supported?
  41. ----------------------------------
  42. The bridge supports JDBC version 1.00.
  43.  
  44.  
  45. What version of ODBC is supported?
  46. ----------------------------------
  47. The bridge supports ODBC 2.x
  48.  
  49.  
  50. What operating systems are supported?
  51. -------------------------------------
  52. The bridge supports Solaris/Sparc 2.4 or 2.5, WinNT/Intel 3.51 and Win95.
  53.  
  54. The Solaris version is provided as a compressed tar file,
  55. jdbc-odbc.10000.tar.Z.
  56.  
  57. The WinNT and Win95 version is provided as zip file, jdbc-odbc.10000.zip.
  58.  
  59.  
  60. The Bridge Implementation
  61. -------------------------
  62. The Bridge is implemented in Java and uses Java native methods to call
  63. ODBC. The only difference between the platform specific versions is the
  64. native library.
  65.  
  66.  
  67. Installation
  68. ------------
  69. See the Java web page for info on installing the JDK. You must also
  70. install JDBC which can be downloaded from
  71. http://splash.javasoft.com/jdbc/
  72.  
  73. See your ODBC driver vendor for info on installing and configuring
  74. ODBC. No special configuration is required for the Bridge.
  75.  
  76. See your database vendor for installation and client configuration
  77. info.
  78.  
  79. Normally, JDBC classes are installed in the jdbc/classes/java/sql
  80. directory. 
  81.  
  82. The Bridge will install its classes in jdbc-odbc/classes/sun/jdbc/odbc.
  83.  
  84. Be sure to add both the jdbc/classes and the jdbc-odbc/classes
  85. directories to your Java CLASSPATH environment variable.
  86.  
  87. For NT and Win95 use a version of unzip that preserves long file names
  88. and use the -d flag. The msvcrt40.dll is included.
  89.  
  90. For Solaris uncompress and extract (tar xvf) the files.
  91.  
  92. On Solaris you need to add the directory containing libJdbcOdbc.so to
  93. your LD_LIBRARY_PATH. The libJdbcOdbc.so shared library has the following dependencies:
  94.  
  95.     libodbcinst.so.1
  96.     libodbc.so.1
  97.     libm.so.1
  98.     libc.so.1
  99.     libdl.so.1
  100.  
  101. Some ODBC driver managers name their libs libodbcinst.so and
  102. libodbc.so. These require symbolic links to the names above.
  103.  
  104. On WinNT and Win95 you need to add the directory containing
  105. jdbcodbc.dll to your PATH. The jdbcodbc dll has the following
  106. dependencies:
  107.  
  108.     kernel32.dll
  109.     odbc32.dll
  110.     odbccp32.dll
  111.     msvcrt40.dll - this is included with the bridge
  112.  
  113. In addition to the Bridge class files, a sample JDBC app,
  114. simpleselect.java, that uses the Bridge is provided. You will need to
  115. edit its data source name, UID, PWD and table name.
  116.  
  117.  
  118. Using the Bridge
  119. ----------------
  120.  
  121. The Bridge is used by opening a JDBC connection using a URL with the
  122. odbc subprotocol. See below for URL examples.
  123.  
  124. Prior to connecting, the bridge driver class, sun.jdbc.odbc.JdbcOdbcDriver,
  125. must either be added to the java.lang.System property named
  126. 'jdbc.drivers' or it must be explicitly loaded using the Java class
  127. loader. Explicit loading is done by:
  128.  
  129. Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
  130.  
  131. When loaded, the ODBC driver (like all good JDBC drivers) creates an
  132. instance of itself and registers this with the JDBC driver manager.
  133.  
  134.  
  135. Using the Bridge from an Applet
  136. -------------------------------
  137. There have been a number of questions about the use of JDBC from
  138. applets and, in particular, the use of the JDBC-ODBC Bridge driver from
  139. applets.
  140.  
  141. JDBC is designed to support both intranet and web access to databases.
  142. It also is designed to support database access from servers written in
  143. Java.  The specific nature of access provided depends on the
  144. capabilities of the JDBC driver your using.
  145.  
  146. The JDBC spec describes several database access scenarios. It is likely
  147. that there will soon be drivers supporting these scenarios as well as
  148. other scenarios we have not even thought of.
  149.  
  150. JavaSoft provides the JDBC-ODBC Bridge driver which allows JDBC
  151. developers to tap into the existing database access facilities provided
  152. by the ODBC API and the drivers that support it. The Bridge driver does
  153. have a few limitations.
  154.  
  155. First, there are the limitations of ODBC itself. The ODBC Driver
  156. Manager, ODBC driver and, in most cases, the DBMS client library all
  157. execute in the same program as JDBC and the JDBC-ODBC Bridge. Getting
  158. this to happen typically involves some complicated ODBC and DBMS
  159. installation and configuration. Most ODBC drivers do not support
  160. database access via the Web although its likely that someone is
  161. thinking up a solution for this.
  162.  
  163. Second, the Bridge accesses ODBC via Java native C calls. This requires
  164. a native library that is platform specific and must be installed
  165. manually on each Bridge client.
  166.  
  167. Third, the Bridge cannot tell to which TCP/IP address it is connecting
  168. to. This means that it must deny service to all untrusted Java code. It
  169. defines trusted code as either code with no security manager or code
  170. whose security manager allows file writes.  Some browsers provide a
  171. mechanism for locally installing trusted applets and some do not. All
  172. browsers treat downloaded applets as untrusted. This will change with
  173. the introduction of signed applets later this year.
  174.  
  175. So, for these reasons it is not practical to use the Bridge for Web
  176. database access.
  177.  
  178. The Bridge can be used for intranet access. This requires that each
  179. client have ODBC, the Bridge native library, the Bridge itself, and
  180. JDBC installed (JDBC will be added to the next JDK release; the Bridge
  181. will likely be added as well.) This will work from a Java application
  182. and from trusted applets.  Depending on the security restrictions
  183. imposed by your browser you may or may not be able treat locally
  184. installed applets as trusted.
  185.  
  186.  
  187. Tested Configurations
  188. ---------------------
  189. From Solaris, we have used the Bridge to access Oracle 7.1.6 and Sybase
  190. Version 10 running on Solaris. 
  191.  
  192. From NT, we have used the Bridge to access SQL Server 6.x.
  193.  
  194.  
  195. ODBC Drivers Known to Work with the Bridge
  196. ------------------------------------------
  197. Visigenic provides ODBC drivers which have been tested with the the
  198. Bridge.  Drivers are available for Oracle, Sybase, Informix, Microsoft
  199. SQL Server, and Ingres.  To purchase the ODBC DriverSet 2.0 please
  200. contact Visigenic sales at 415-312-7197, or visit the web site
  201. www.visigenic.com.
  202.  
  203. The INTERSOLV ODBC driver suite should be completely compatible with
  204. the JDBC-ODBC bridge.  The following drivers have successfully passed a
  205. minimal test suite:  Oracle, xBASE, Sybase (Windows NT/95 only),
  206. Microsoft SQL-Server, and Informix. To evaluate or purchase INTERSOLV
  207. ODBC drivers, please contact INTERSOLV DataDirect Sales at 1
  208. 800-547-4000 Option 2 or via the World Wide Web at
  209. http:\\www.intersolv.com.
  210.  
  211. The MS SQL Server driver has also been used successfully on NT.
  212.  
  213. Many other ODBC drivers will likely work.
  214.  
  215.  
  216. ODBC Driver Incompatibilities
  217. -----------------------------
  218. On Solaris, we have found that the Sybase ctlib based drivers use ctlib
  219. in a way that causes a signal handling conflict between the Java VM and
  220. ctlib. This is likely not a problem on NT due to differences in the NT
  221. Java VM but this has not been verified.
  222.  
  223. Some ODBC drivers only allow a single ResultSet to be active per
  224. Connection.
  225.  
  226.  
  227. What is the JDBC URL supported by the Bridge?
  228. ---------------------------------------------
  229. The Bridge driver uses the odbc sub protocol. Url's for this
  230. subprotocol are of the form:
  231.  
  232. jdbc:odbc:<data-source-name>[;<attribute-name>=<attribute-value>]*
  233.  
  234. For example:
  235.  
  236. jdbc:odbc:sybase
  237.  
  238. jdbc:odbc:mydb;UID=me;PWD=secret
  239.  
  240. jdbc:odbc:ora123;Cachesize=300
  241.  
  242.  
  243. Some Details About Versioning
  244. -----------------------------
  245. The JDBC API has methods for returning the driver name and version.  
  246. getDriverName and getDriverVersion (in DatabaseMetaData) will return the 
  247. following for the JDBC-ODBC Bridge:
  248.  
  249. getDriverName:          JDBC-ODBC Bridge (<odbc-driver-name>)
  250.  
  251.  
  252. getDriverVersion:       0.7303 (<odbc-driver-version>)
  253.  
  254. The Bridge version number breaks down as:
  255.  
  256.                         0.7303
  257.                         | | |____  03 - Current Bridge version for this
  258.                         | |              version of DriverManager 
  259.                         | |______  73 - Supported DriverManager minor 
  260.                         |                version
  261.                         |________   0 - Supported DriverManager major       
  262.                                          version
  263.  
  264.  
  265. Debugging
  266. ---------
  267.  
  268. The Bridge provides extensive tracing when DriverManager tracing is
  269. enabled. The following line of code enables tracing and sends it to
  270. standard out:
  271.  
  272.     java.sql.DriverManager.setLogStream(java.lang.System.out);
  273.  
  274.  
  275. General Notes
  276. -------------
  277. The Bridge was compiled with JDK 1.0.2.
  278.  
  279. The Bridge assumes that ODBC drivers are not reentrant. This means the
  280. Bridge must synchronize access to these drivers. The result is that the
  281. Bridge provides limited concurrency. This is a limitation of the
  282. Bridge; JDBC itself supports a high degree of concurrency and the JDBC
  283. drivers now being developed should significantly improve concurrent
  284. access.
  285.  
  286.  
  287.  
  288.